System and method for displaying well data

ABSTRACT

A method of delivering data from an energy industry or formation operation includes: receiving a data set representing parameter values generated during at least a portion of the operation; generating at least one data structure on a display area, the at least one data structure providing a visual representation of at least a portion of the data set; selecting a visual indicator associated with each of the at least one data structure, the visual indicator including information identifying an associated data structure; iteratively determining a suitable location for placement of the visual indicator on the display area by a processor using a probabilistic algorithm; and generating the display including the visual indicator located at the suitable position.

BACKGROUND

Large amounts of data and information are typically acquired duringenergy industry operations, such as exploration, formation evaluation,production and drilling operations. Data output may take various forms,such as well logs produced from various logging operation. Labeling thecurves on such logs by field engineers can be a time consuming effort.This is compounded by the need to typically perform such labelingmultiple times a day on multiple logs and at numerous depth levels, aswell as the need to position such labels so as not to obscure importantdata in a manner acceptable to customers.

SUMMARY

A method of delivering data from an energy industry or formationoperation includes: receiving a data set representing parameter valuesgenerated during at least a portion of the operation; generating atleast one data structure on a display area, the at least one datastructure providing a visual representation of at least a portion of thedata set; selecting a visual indicator associated with each of the atleast one data structure, the visual indicator including informationidentifying an associated data structure; iteratively determining asuitable location for placement of the visual indicator on the displayarea by a processor using a probabilistic algorithm; and generating thedisplay including the visual indicator located at the suitable position.

A system for delivering data from an energy industry or formationoperation includes at least one data acquisition tool configured tomeasure at least one parameter of an earth formation, and a processor.The processor is configured to perform: receiving a data setrepresenting parameter values generated during at least a portion of theoperation; generating at least one data structure on a display area, theat least one data structure providing a visual representation of atleast a portion of the data set; selecting a visual indicator associatedwith each of the at least one data structure, the visual indicatorincluding information identifying an associated data structure;iteratively determining a suitable location for placement of the visualindicator on the display area using a probabilistic algorithm; andgenerating the display including the visual indicator located at thesuitable position.

BRIEF DESCRIPTION OF THE DRAWINGS

The subject matter which is regarded as the invention is particularlypointed out and distinctly claimed in the claims at the conclusion ofthe specification. The foregoing and other features and advantages ofthe invention are apparent from the following detailed description takenin conjunction with the accompanying drawings in which:

FIG. 1 is a side cross-sectional view of an embodiment of a subterraneanwell drilling, evaluation, exploration and/or production system;

FIG. 2 depicts a portion of an exemplary well log data display;

FIG. 3 depicts a close-up portion of the well log data display of FIG.2; and

FIG. 4 is a flow chart illustrating a method of displaying well log dataand data labels.

DETAILED DESCRIPTION

Referring to FIG. 1, an exemplary embodiment of a well drilling,measurement, evaluation and/or production system 10 includes a boreholestring 12 that is shown disposed in a borehole 14 that penetrates atleast one earth formation during a downhole operation, such as adrilling, measurement and/or hydrocarbon production operation. In theembodiment shown in FIG. 1, the borehole string is configured as a drillstring. However, the system 10 and borehole string 12 are not limited tothe embodiments described herein, and may include any structure suitablefor being lowered into a wellbore or for connecting a drill or downholetool to the surface. For example, the borehole string 12 may beconfigured as wired pipe, coiled tubing, a wireline or a hydrocarbonproduction string.

In one embodiment, the system 10 includes a derrick 16 mounted on aderrick floor 18 that supports a rotary table 20 that is rotated by aprime mover at a desired rotational speed. The drill string 12 includesone or more drill pipe sections 22 or coiled tubing, and is connected toa drill bit 24 that may be rotated via the drill string 12 or using adownhole mud motor. The system 10 may also include a bottomhole assembly(BHA) 26. Other components of the system 10 include, e.g., a mud pit 28and one or more mud pumps 30 connected to an injection line and a returnline 32.

Various data acquisition tools such as sensor devices and/or downholetools may be disposed at the surface and/or in the borehole 12 tomeasure parameters of components of the system 10 and/or downholeparameters. For example, a downhole tool 34 is incorporated into anylocation along the drill string 12 and includes sensors for measuringdownhole fluid parameters (e.g., pressure, fluid flow, fluidcomposition), borehole string parameters, operational parameters and/orformation parameters. Additional sensors 36 may be located at selectedlocations, such as an injection fluid line and/or the return line 32.Downhole tools and sensors may include a single tool or multiple toolsdisposed downhole, and sensors may include multiple sensors such asdistributed sensors or sensors arrayed along a borehole string.

The sensors and downhole tool configurations are not limited to thosedescribed herein. The sensors and/or downhole tool 34 may be configuredto provide data regarding measurements, communicate with surface ordownhole processors, and/or perform control functions. Such sensors canbe deployed before, during or after drilling, e.g., via wireline,measurement-while-drilling (“MWD”) or logging-while-drilling (“LWD”)components. LWD and other measurement data may be transmitted to thesurface or saved in memory downhole. Exemplary formation parameters thatcould be measured or monitored include resistivity, density, porosity,permeability, acoustic properties, nuclear-magnetic resonanceproperties, formation pressures, properties or characteristics of thefluids downhole and other desired properties of the formationsurrounding the borehole 14. The system 10 may further include a varietyof other sensors and devices for determining one or more properties ofthe BHA (such as vibration, bending moment, acceleration, oscillations,whirl, stick-slip, etc.) and drilling operating parameters, such asweight-on-bit, fluid flow rate, pressure, temperature, rate ofpenetration, azimuth, tool face, drill bit rotation, etc.

Various types of data may be collected via acquisition tools anddelivered and/or displayed for analysis of a formation. Data acquired byembodiments described herein may be generally referred to as formationdata or well data, but is not limited to the specific data typesdescribed herein. Such data may be acquired via downhole or surfacedevices associated with a borehole or well and/or acquired via surfacedevices (e.g., seismic surveying systems).

Acquired data may include data sets or portions thereof that can beprovided as a deliverable from well and/or formation operations. Onetype of deliverable is a well log. A “log,” in one embodiment, is acontinuous plot of data acquired from a well during and/or after aformation operation. As described herein, a “formation operation” refersto any surface or downhole operation (e.g., drilling, exploration,formation evaluation) related to hydrocarbon exploration and/orproduction.

In one embodiment, the downhole tool 34, the BHA 26 and/or the sensors36 are in communication with a surface processing unit 38. The surfaceprocessing unit 38 may be configured to receive and process acquireddata, deliver data (e.g., generate visual well log or other display),and/or control various production and/or drilling parameters. Any ofvarious transmission media and connections, such as wired connections,fiber optic connections, wireless connections and mud pulse telemetrymay be utilized to facilitate communication between system components.

The downhole tool 34, BHA 26 and/or the surface processing unit 38 mayinclude components as necessary to provide for storing and/or processingdata collected from various sensors therein. Exemplary componentsinclude, without limitation, at least one processor, storage, memory,input devices, output devices and the like.

FIGS. 2 and 3 depict portions of an exemplary well log that includesacquired data representing parameter values, which are displayed ascurves or plots. The well log also includes various visual indicators orlabels providing information regarding each curve or set of data. Inthis example, each curve is associated with a label that indicates thetype of data collected, i.e., the borehole or formation parameterinformation collected by measurements. It is noted that the well logdescribed herein is non-limiting, as data can be displayed and/ordelivered in any suitable format (e.g., graphs, tables, printouts, etc.)

FIG. 2 shows a well log 40 that displays a continuous stream of datacollected during a LWD operation. FIG. 3 is a close-up of part of thelog 40 shown in FIG. 2. The well log 40 includes a plurality of curvesrepresenting data derived from various measurements. The well log 40includes three tracks displaying various information in the form ofcurves, and each of the curves is associated with a label and a pointerconnecting the label to the respective curve. The curves progress alonga vertical axis corresponding to, e.g., depth or time.

In the left-hand track, a curve 42 displays borehole gamma ray data andis identified by a label 44, shown as “GRCFM”. The label 44 is connectedto the curve 42 by a pointer 46. A curve 48 indicates the size of thedrill bit and is connected to a label 50, shown as “BITSIZE”. Atemperature curve 52 is identified by a “TCDM” label 54. An averageweight-on-bit curve 56 is connected to a “WOB_AVG” label 58, and anaverage rate of penetration curve 60 is connected to a “ROP_AVG” label62.

In the center track, resistivity data is displayed. Curves 64 and 66show resistivity amplitude data and are associated with “RACELM” labels68 and “RACEHM” labels 70, respectively. Curves 72 and 74 showresistivity phase differences and are associated with “RPCELM” labels 76and “RPCEHM” labels 78, respectively. In the right-hand track, densitydata is displayed. Curves in this track include a bulk density curve 80associated with a “BDCFM” label 82 and a density porosity curve 84associated with a “DPEFM” label 86.

Although the curves are associated with labels via pointers, suchpointers are not required, as any technique for associating curves withlabels may be used. For example, labels can be color-coordinated withcurves or data or otherwise provide a visual association (e.g., boldfont, line and label thicknesses). In addition, various other visualstructures, such as alphanumeric structures or illustrations, can beincluded on the log or other deliverable. Such structures can be used toprovide additional information, such as well numbers, formationidentifiers, lithology information, etc.

FIG. 4 illustrates a method 100 of displaying and/or delivering welldata or other acquired data. The method 100 includes configuring and/orpositioning information labels or other visual indications that provideinformation regarding data sets in the display and/or deliverable. Themethod 100, in one embodiment, is used in conjunction with the system 10and/or the surface processing unit 38, although the method 100 may beutilized in conjunction with any suitable combination of sensingdevices, acquisition tools and processors. The method 100 includes oneor more stages 101-105. In one embodiment, the method 100 includes theexecution of all of stages 101-105 in the order described. However,certain stages may be omitted, stages may be added, or the order of thestages changed.

In the first stage 101, data is acquired from a formation operation.Acquisition may include collecting data and/or processing received datato calculate parameter information. For example, a drill string, loggingstring and/or production string 12 is disposed within the wellbore 14and a downhole operation is performed. During the operation, data iscollected via sensor devices (e.g., the sensors 36 and/or the downholetool 34). Such data provides information related to, for example,drilling and/or borehole string parameters, rock parameters, lithology,density, porosity, permeability, fluid composition and others. Any typesof data acquisition and/or sensor devices may be used, such as samplingdevices, temperature and pressure sensors, gamma ray sensors, pulsedneutron sensors, acoustic sensors, magnetic resonance sensors andresistivity sensors. Data sets that can be utilized with the method 100include any structured and/or unstructured data and information relatedto an earth formation, acquired during all or a portion of a drilling orother formation operation.

In the second stage 102, the data is processed for display in a suitablevisual format by a processor. Data sets or portions thereof are used togenerate data structures representing various parameters. Exemplary datastructures include plots, graphs, charts and curves.

In one embodiment, the data is processed and delivered as a visualrecord of measurements referred to as a log or well log. Exemplary welllogs display data sets as a number of curves showing the progression ofvarious types of measured data representing various parameters. Suchdata can be displayed as a function of depth or time.

An exemplary log is shown in FIG. 2, which includes curves representingdata sets related to parameters including drilling, gamma ray,resistivity and density data as discussed above. Well logs can bedisplayed on a screen and manipulated by a user (e.g., changing scale,scrolling) and/or printed.

In the third stage 103, various visual indicators or identifiers aregenerated and/or selected to be assigned to different curves or othervisual structures in the display area. In one embodiment, identifiersinclude labels that provide identifying information for a curve or otherset of data. The identifiers may include additional structures such aslines, arrows or pointers that associate a label with a particular dataset or curve. Other characteristics may be assigned to the identifiers,such as colors or other visual indications that allow a user toassociate a data set or curve with an identifier.

In one embodiment, the visual indicators are curve labels assigned toeach curve in a well log, such as the log 40. Each curve in this examplehas a label attached with a pointer of the same color as the curve.

In the fourth stage 104, labels or other visual indicators arepositioned relative to each curve or other data structure, using acollision avoidance algorithm. The algorithm positions the indicatorsaccording to selected rules or conditions. Such conditions are providedto ensure that the indicators and their associations can be readilyunderstood. The algorithm places the indicators so that they do notcontact or overlap other structures in the display, such that anindicator does not contact an associated data structure or curve, otherdata structures or identifiers and other structures that would makereading and interpreting the identifiers difficult. In addition topositioning the indicators, the algorithm also positions any additionalstructures to be added to the display area, such as the pointers.

For a well log such as the log 40, for example, various conditions areselected for placing the labels. Such conditions may include one or moreof:

-   -   labels cannot overlap each other;    -   labels have to stay within the curve's track;    -   labels have to avoid crossing heavy and medium weight horizontal        grid lines;    -   labels have to avoid being drawn over curves; and    -   label pointers cannot cross each other.

In one embodiment, the collision avoidance algorithm is a probabilisticalgorithm that iteratively determines a suitable location for eachindicator and other visual structure in the display area. An exemplaryalgorithm is a simulated annealing algorithm. A simulated annealingalgorithm uses equations analogous to those that control thethermodynamic process of annealing metal.

A simulated annealing algorithm can be used to solve NP-Hard problems,or computational problems that require more than polynomial time toreach a solution. Optimizing the placement of each identifier for adisplay (e.g., using an optimization or iterative exhaustive method) canresult in a large number of iterations that would unacceptably delaygenerating a display or deliverable. For example, for laying out anumber of labels “l” given a number of points or possible positions “n”to place the label, the required number of iterations in an exhaustivesearch can be represented by the exponential function O(l^n). Thus, fora display region having 5 labels about 10 points, the number ofiterations required to test each possible placement would be5^10=9,765,625, and this number would increase as the layout space andnumber of labels increase, making the solution set difficult to evaluatepractically. Using quality controlled temperature and energy functions,simulated annealing can find a suitable or “good enough” solution in arelatively small number of iterations.

An embodiment of the annealing algorithm as applied to determining anacceptable or suitable position for a label or other identifier isdescribed in the context of the following equations. The algorithmpositions labels and other structures (e.g., connectors) in a displayarea by probabilistically considering neighboring configurationsrelative to current configurations. A configuration in this embodimentrefers to the positions of one or more labels or other visual structuresin a display area relative to the data structures (e.g., curves). Thisconsideration is performed successively for a plurality ofconfigurations until a suitable configuration is found.

An embodiment of an annealing algorithm specifies the probability ofmoving a label location or configuration to a neighboring location orconfiguration by an acceptance probability function (P) that is afunction of the total cost or “energy” of a system having a label orlabels positioned at a particular location or in a particularconfiguration within the display area. The function P is a function ofthe energy or total cost (E) of a current location/configuration and theenergy or total cost (E′) of a neighboring location/configuration, andis also a function of a global time-varying parameter (T).

The probability P that the label or labels move from a current to aneighboring position depends on whether E′ is less than E, and also onhow much lower E′ is than E. The parameter T is initially set to arelatively high value, increasing the probability of a move even if E′is greater than E, and is reduced at each successive iteration until T=0or until a maximum number of iterations has been performed. Theparameter T can be reduced according to a selected annealing schedule.

In one embodiment, the algorithm iteratively calculates the total costand compares the total cost for successively selected positions. At eachiteration, the total cost of the current position is compared to thetotal cost of some neighboring position. If the neighboring positionrepresents a smaller total cost, the current position may be moved tothe neighboring position. For each iteration, a delta can be calculatedfor moving a label from the current (“as-is”) position to theneighboring (“to-be”) position to determine via the probability functionwhether the neighboring position should be selected.

As described herein, a “position” or configuration may refer to theposition of an individual label and/or connector, or may refer to theoverall configuration of a plurality of visual structures. For example,referring to FIG. 2, a position or configuration refers to the positionin the display area of labels 44, 48, 52 and 56, and their associatedconnectors. The configuration may also include the position of anyadditional visual structures and/or the position and area of any portionthat can be selected by a user or is otherwise of increased importance.

In one embodiment, one or more of the following equations are used tocalculate the total cost. In one example, all of the equations are used,although any combination may be used. An example of some of thevariables referenced in the following equations is shown in FIG. 3.

Each equation assigns a cost of a position or configuration based on adifferent condition. The costs shown herein are exemplary and can beadjusted based on, e.g., the relative importance of each condition.Exemplary conditions for which a cost may be calculated include anchorpoint overlap, obscured background, obscured curve, connector length,label overlap, crossing between connectors and crossing betweenconnectors and labels. A cost multiplier may be applied to one or moreconditions to increase the relative cost of a condition. Exemplary costmultipliers “λ” are shown below.

The equations below use a two-dimensional orthogonal coordinate systemhaving a horizontal axis “x” and a vertical axis “y.” The equationscould be applied to other coordinates where appropriate.

An “anchor point overlap” condition occurs when an attachment point on acurve overlaps the vertical and/or horizontal extent of an associatedlabel. The attachment point is the point on the curve at which theconnector contacts the curve. The anchor point overlap cost may becalculated based on the following equation:Σ_(i=0) ^(n)max(0,min(p _(i) .x−(l _(i).left−m),(l _(i).right+m)−p _(i).x))²*λ  (1)In this equation, “l” is the label, “m” is a fixed size marginsurrounding the label, “p” is the attachment point, and “n” is thenumber of labels. As shown in the equation, an individual cost iscalculated for each individual label and associated attachment point (liand pi) based on the attachment point position, the label boundaries(li.left and li.right) and the margin. The individual costs are summedto calculate the cost for the current placement (i.e., configuration orposition) of labels and pointers. An anchor overlap cost multiplier(e.g., λ=1000) may be applied. The attachment point, label positions andboundaries are calculated in the horizontal (x) direction; however theoverlap cost may be calculated in the horizontal direction, the verticaldirection, or both.

An “obscured background” condition may occur when one or more labelsoverlap or otherwise obscure some background structure or other visualstructure displaying information. A cost for this condition may becalculated by summing the area of all portions of each label thatoverlap a background structure. The background structure may be definedby a portion of the display area. In this example, the portion is arectangle, but could be any suitable shape. In addition, the definedportion can be used to select any area of the display that is ofincreased importance, and can be selected by a user (e.g., customer).For example, a portion of the display area can be defined for areas ofhigh value information to ensure that labels and other structures avoidsuch high value information present on the log.

An exemplary equation for calculating the obscured background cost is:Σ_(i=0) ^(n)[[Σ_(j=0) ^(k)Area(l _(i) ∩r _(j))]*λ]  (2)where “r” is a background rectangle and “k” is the number of backgroundrectangles. The cost multiplier in this example is λ=100000. An exampleof a background rectangle is shown in FIG. 3.

An “obscured curve” condition occurs when one or more labels overlap orobscure a curve. An exemplary calculation includes defining the curvesby very short line segments, and defining a rectangular or other areabased on the start and end point of each segment that is tested againsteach label's extent. This cost is calculated similarly to the obscuredbackground cost, but in this case the rectangles r are defined by theline segments:Σ_(i=0) ^(n)[[Σ_(j=0) ^(k)Area(l _(i) ∩r _(j))]*λ].  (3)

A “connector length” cost is associated with the length of eachconnector. The length is calculated as the distance from the centerpoint of the label to the attachment point on the curve:Σ_(i=0) ^(n)[length(l _(i) →p _(i))*λ].  (4)The connector length cost multiplier is, e.g., λ=1000.

A “label overlap” condition occurs when labels overlap one another. Anexemplary equation for calculating the label overlap cost is:Σ_(i=0) ^(n−1)[[Σ_(j=i) ^(n)Area(l _(i) ∩l _(j))]*λ].  (5)The label overlap cost multiplier is, e.g., λ=1000.

A “connector crossing” cost may be calculated to account for two or moreconnectors crossing. An exemplary equation for calculating this cost is:Σ_(i=0) ^(n−1) if [c _(i) ∩c _(i+1)] then λ,  (6)where “c” is a connector, “n” is the number of connectors, and theconnector length cost multiplier is, e.g., λ=1000000.

A “connector crossing label” cost may be calculated for conditions wherea connector crosses through a label. An exemplary equation forcalculating this cost is:Σ_(i=0) ^(n−1)[Σ_(j=i) ^(n)Area(l _(n) ∩l _(j))*λ],  (7)where the background obscuring cost multiplier is, e.g., λ=1000000.

One or more of the above costs are used to calculate the total cost. Forexample, for each position or configuration, the total cost iscalculated by summing each cost. This total cost can be used as an inputinto a suitable algorithm to determine a suitable position orconfiguration for a display area. In one embodiment, the total cost isused to calculate a probability function for a probabilistic algorithmsuch as the simulated annealing algorithm.

In the fourth stage 104, the resulting display for all or a portion ofthe data is delivered and may be used to analyze operational and/orformation data, predict future events, and/or understand the status of acurrent well or operation.

In one embodiment, generation and positioning of the labels or otheridentifiers are performed in a “just-in-time” manner, which can avoid orreduce delays in the generation of the deliverables. For example, thepositioning algorithm is performed only for the portion of the displaythat is being currently delivered to a user. For example, the processorselects a portion of the well log or other data display based on thearea being selected for display or delivery to a user. The displaylabels and other structures for the selected area are selected andpositioned as described above for the selected area. In this way, labelscan be placed as the deliverable is provided and the processor need notwait until the entire log or full data set(s) is ready for deliverybefore placing the labels. In one embodiment, the processor onlyperforms the algorithm and labels the log (or a portion thereof) at thetime it is needed, e.g., as a user scrolls to a page in the log thatrequires labeling, or when the log or a portion thereof is printed.

For example, the log 40 shown in FIG. 2 may be a portion of a well logthat is currently displayed on a user's computer screen. In thisexample, the algorithm is performed for this portion in response to theuser scrolling to or otherwise selecting the portion; the algorithm isnot applied to subsequent portions until they are requested for displayor delivery by the user.

Generally, some of the teachings herein are reduced to an algorithm thatis stored on machine-readable media. The algorithm is implemented by acomputer or processor such as the surface processing unit 38 andprovides operators with desired output. For example, data may betransmitted in real time from the tool 34 or sensors 36 to the surfaceprocessing unit 38 for processing. As described herein, a processor mayrefer to one or more processors configured to perform all or part of thevarious methods described herein. For example, the methods describedherein may be performed by a single processor processing unit (e.g., thesurface processing unit 38) or by multiple processors (e.g., an a cloudcomputing or network). In addition, a “processor” may include one ormore downhole or surface processors associated with a drilling or otheroilfield operation, e.g., processors reducing the complexity of the data(such as by data compression) or acting as pre-processors.

The systems and methods described herein provide various advantages overprior art techniques. The systems and methods provide an efficient wayto calculate label positions for data displays without addingsignificant delays to delivery of such displays. In addition, themethods provide for automated labeling that can be applied to datadeliverables that can be very large (e.g., well log printouts can bevery long). Labeling such deliverables can be very time-consuming. Thesystems and methods described herein address this deficiency in theprior art.

In support of the teachings herein, various analyses and/or analyticalcomponents may be used, including digital and/or analog systems. Thesystem may have components such as a processor, storage media, memory,input, output, communications link (wired, wireless, pulsed mud, opticalor other), user interfaces, software programs, signal processors(digital or analog) and other such components (such as resistors,capacitors, inductors and others) to provide for operation and analysesof the apparatus and methods disclosed herein in any of several mannerswell-appreciated in the art. It is considered that these teachings maybe, but need not be, implemented in conjunction with a set of computerexecutable instructions stored on a computer readable medium, includingmemory (ROMs, RAMs), optical (CD-ROMs), or magnetic (disks, harddrives), or any other type that when executed causes a computer toimplement the method of the present invention. These instructions mayprovide for equipment operation, control, data collection and analysisand other functions deemed relevant by a system designer, owner, user orother such personnel, in addition to the functions described in thisdisclosure.

One skilled in the art will recognize that the various components ortechnologies may provide certain necessary or beneficial functionalityor features. Accordingly, these functions and features as may be neededin support of the appended claims and variations thereof, are recognizedas being inherently included as a part of the teachings herein and apart of the invention disclosed.

While the invention has been described with reference to exemplaryembodiments, it will be understood by those skilled in the art thatvarious changes may be made and equivalents may be substituted forelements thereof without departing from the scope of the invention. Inaddition, many modifications will be appreciated by those skilled in theart to adapt a particular instrument, situation or material to theteachings of the invention without departing from the essential scopethereof. Therefore, it is intended that the invention not be limited tothe particular embodiment disclosed as the best mode contemplated forcarrying out this invention, but that the invention will include allembodiments falling within the scope of the appended claims.

The invention claimed is:
 1. A method of delivering data from an energyindustry or formation operation, comprising: receiving a data setrepresenting parameter values generated during at least a portion of theoperation; generating at least one data structure on a display area, theat least one data structure providing a visual representation of atleast a portion of the data set; selecting a visual indicator associatedwith each of the at least one data structure, the visual indicatorincluding information identifying an associated data structure;iteratively determining a suitable location for placement of the visualindicator on the display area by a processor using a probabilisticalgorithm; and generating the display including the visual indicatorlocated at the suitable position, wherein determining the suitablelocation includes, for each iteration, performing: calculating aprobability value based on at least a first cost value, a second costvalue, and a time-varying parameter, the first cost value based on acurrent position relative to the at least one data structure, the secondcost value based on a different position relative to the at least onedata structure; and moving the visual indicator from the currentposition to the different position in response to the probability valuebeing at least a selected value.
 2. The method of claim 1, wherein thedata set is a well log and the at least one data structure is at leastone curve representing measurement data collected from measurements ofan earth formation.
 3. The method of claim 1, wherein the probabilisticalgorithm is a simulated annealing algorithm.
 4. The method of claim 1,wherein the different position is a neighboring position for the visualindicator, the second cost value based on the neighboring positionrelative to the position of the at least one data structure.
 5. Themethod of claim 1, wherein the time-varying parameter is reduced as thealgorithm progresses through each iteration according to a selectedschedule.
 6. The method of claim 1, wherein the data set is a well log,each of the at least one data structure is a curve, the visual indicatoris a label identifying an associated curve, and the first cost value andthe second cost value are calculated based on at least one of: whetherand to what extent the label obscures at least one of the associatedcurve and another curve; a length of a connector between the label andthe associated curve; whether and to what extent the label obscuresanother label; and whether a connector crosses at least one of anotherconnector and a label.
 7. The method of claim 1, wherein the first costvalue and the second cost value are calculated based on whether and towhat extent the visual indicator obscures an area of the display areaselected by a user.
 8. The method of claim 1, wherein generating thedisplay includes generating a portion of the display selected by a user.9. The method of claim 8, wherein the determining the suitable locationis performed in response to the portion being selected for delivery. 10.A system for delivering data from an energy industry or formationoperation, comprising: at least one data acquisition tool configured tomeasure at least one parameter of an earth formation; a processorconfigured to perform: receiving a data set representing parametervalues generated during at least a portion of the operation; generatingat least one data structure on a display area, the at least one datastructure providing a visual representation of at least a portion of thedata set; selecting a visual indicator associated with each of the atleast one data structure, the visual indicator including informationidentifying an associated data structure; iteratively determining asuitable location for placement of the visual indicator on the displayarea using a probabilistic algorithm; and generating the displayincluding the visual indicator located at the suitable position, whereindetermining the suitable location includes, for each iteration,performing: calculating a probability value based on at least a firstcost value, a second cost value, and a time-varying parameter, the firstcost value based on a current position relative to the at least one datastructure, the second cost value based on a different position relativeto the at least one data structure; and moving the visual indicator fromthe current position to the different position in response to theprobability value being at least a selected value.
 11. The system ofclaim 10, wherein the data set is a well log and the at least one datastructure is at least one curve representing measurement data collectedfrom measurements of an earth formation.
 12. The system of claim 10,wherein the probabilistic algorithm is a simulated annealing algorithm.13. The system of claim 10, wherein the different position is aneighboring position for the visual indicator, the second cost valuebased on the neighboring position relative to the position of the atleast one data structure.
 14. The system of claim 10, wherein thetime-varying parameter is reduced as the algorithm progresses througheach iteration according to a selected schedule.
 15. The system of claim10, wherein the data set is a well log, each of the at least one datastructure is a curve, the visual indicator is a label identifying anassociated curve, and the first cost value and the second cost value arecalculated based on at least one of: whether and to what extent thelabel obscures at least one of the associated curve and another curve; alength of a connector between the label and the associated curve;whether and to what extent the label obscures another label; and whethera connector crosses at least one of another connector and a label. 16.The system of claim 10, wherein the first cost value and the second costvalue are calculated based on whether and to what extent the visualindicator obscures an area of the display area selected by a user. 17.The system of claim 10, wherein generating the display includesgenerating a portion of the display selected by a user.
 18. The systemof claim 17, wherein determining the suitable location is performed inresponse to the portion being selected for delivery.